/**
 * 测试 逻辑运算符 和 条件运算符
 */

let first = true ;
let second = false ;

// 逻辑非
let third = !first ; // true --> false
let fourth = !second ; // false --> true
console.log( `first = ${first} , third = ${third}` );
console.log( `second = ${second} , fourth = ${fourth}` );

// 逻辑与: 在 && 前后两个表达式都为 true 时结果才为 true
console.log( first && second ); // true && false  => false
console.log( first && fourth ); // true && true   => true
console.log( second && third ); // false && false => false

// 逻辑或: 在 || 前后的表达式中只要有一个为 true 结果即为 true
console.log( first || second ); // true || false  => true
console.log( first || fourth ); // true || true   => true
console.log( second || third ); // false || false => false

console.log( '= = = 条件运算符 = = =' );

// 逻辑表达式 ? 第一个结果 : 第二个结果 ;
// 若表达式返回 true 则取第一个结果
// 若表达式返回 false 则取第二个结果

let rand = Math.random(); // 生成一个 [ 0 , 1 ) 的伪随机数
console.log( rand );

let n = rand * 100 ; // 得到 [ 0 , 100 ) 之间的浮点数
console.log( n );

let x = Math.trunc( n ); // 将 n 截取至整数部分
console.log( x );

// 判断随机数 x 是否大于 50 ，如果是就返回 '是的'，否则返回 '不是'
let result = x > 50 ? '是的' : '不是' ;
console.log( result ); 